1. Field of the Invention
The present invention, generally, relates to data communication through packet networks and, more particularly, to a method for multiplexing transport stream data or digital uncompressed stream data through an internet protocol network.
To make best possible use of more expensive digital data transmission facilities, as much data as possible must be transferred through the data communications system. This is accomplished, according to the present invention, by multiplexing multiple streams of data into a single data channel for transmission.
Stream data multiplexing includes the process of taking data packets from different streams and putting them into one queue, set to fit a pre-set constant bit rate output, such that:
A.) No packet will be delivered to the output device before its delivery time as derived either by program clock references of the stream in constant bitrate (CBR) or by external time stamps in variable bitrate (VBR).
B.) Any delay in sending data packets to an output device will be minimal.
Timing of the multiplexing operation is a property of the input, where the data packets will be multiplexed in either constant bitrate (CBR) or in variable bitrate (VBR).
2. Description of the Prior Art
One way in the past to merge data packets from multiple streams into a single stream was to use the time associated with each input packet to find an open time slot in the output queue. If any time slot in the output queue has been used, then successive time slots are checked one-by-one in sequence until an open slot is found. A pointer to the input packet then is entered in the open slot found in the output queue.
Another method suggested in the past involves examining all of the streams to be multiplexed and selecting the one with the minimum, ready-to-go, time stamp. Previous efforts to provide a method to multiplex packet data for packet networks have taken different forms.
The prior patents listed hereinafter are examples of these previous efforts.
U.S. Pat. No. 5,862,140 to Shen et al. dated Jan. 19, 1999 describes a method that selects a channel by determining the order of sending data packets into the data stream.
U.S. Pat. No. 5,856,973 to Thompson dated Jan. 5, 1999 describes a method for communicating private application data by either stuffing said data into a header portion of the packets or packetizing it and multiplexing it with other data packets.
U.S. Pat. No. 6,118,786 to Tiernan et al. dated Sep. 12, 2000 describes a method of multiplexing data packets of different time rates involving multiple buffers to avoid buffer overflow.
While these prior arrangements may be effective for their stated purpose, the method of the present invention provides other advantages not available and not even contemplated by any of the prior arrangements.